package com.zilu.digitaltwin.common.constants;


import java.text.SimpleDateFormat;
import java.util.Arrays;
import java.util.Collections;
import java.util.List;
import java.util.Map;
import java.util.concurrent.ConcurrentHashMap;

/**
 * @author caijianbao
 */
public class CommonConstants {

    public final static String REQ_ID = "requestId";

    public final static List<String> CATALOG_DETAIL_FIELD_SORT = Arrays.asList("数据来源", "覆盖范围", "空间坐标", "更新频率", "时间版本", "数据说明");

    public static final String DATAQ_URL_PRE = "digital_twins_pro/digitalTwinsPro/";

    public static final String API_ENTITY_OBJECTS = "/api/entity/objects/";

    public static final String API_ENTITY_OBJECT = "/api/entity/object/";

    public static final List<String> DEFAULT_STRATEGY_CODE = Collections.singletonList("inter");

    public static final String PAGE_SIZE = "2000";

    public static final String PAGE_SIZE_10 = "10";

    public static final SimpleDateFormat yyyyMMdd = new SimpleDateFormat("yyyyMMdd");

    public static final String PAGE_TOKEN_1 = "1";

    public static final String PAGE_SIZE_1 = "1";

    //实体-物理表type对应map
    public static Map<String, String> entityCodeTypeMap = new ConcurrentHashMap<>();


    public static final String HEIGHT_KEY = "height";

    public static final String FLOOR_KEY = "floor";


    /**
     * 实体code
     */
    public static final String ENTITY_KEY = "entity";

    /**
     * 建筑物的实体code
     */
    public static final String CATALOG_BUILDING_CODE = "buildingBiz";


    //缓存常量

    /**
     * 实体缓存
     */
    public static final String ENTITY_CACHE = "entityCache";


    /**
     * icon维护key
     */
    public static final String ICON_FOCUS_KEY = "focus";
    public static final String ICON_UNFOCUS_KEY = "unFocus";

    /**
     * 扩展json字段
     */
    public static final String EXTEND_JSON = "extend_json";

    /**
     * 人口数据信息key
     */
    public static final String PEOPLE_INFO_KEY = "peopleInfo";

    public static final String ENTITY_OBJECT_MAPPING_FIELD = "mappingField";

    /**
     * 获取工作人数 eg:医疗卫生设施_医生数
     */
    public static final String GET_WORK_PEOPLE_COUNT_URL = "getWorkPeopleCount";

    /**
     * 医疗卫生_就诊人数
     */
    public static final String GET_HOSPITAL_VISIT_COUNT_URL = "getHospitalVisitCount";
    /**
     * 医疗卫生设施、老年人社会福利设施- 职住分析URL
     */
    public static final String HOSPITAL_OR_OLDER_JOB_AND_RESIDENCE_ANALYSIS_URL = "hospital_or_older_jobAndResidenceAnalysis";


}
